1. Field of Invention
The present invention relates generally to improvements in the operation and performance of client-server type internetworked computer systems of global extent, such as the Internet, and more particularly to a novel Internet-based information system and method which enables a millions of timed-constrained competitions, contests or transactions, among the mass population in a fundamentally fair and secure manner, using globally time-synchronized client subsystems and information servers having client-event resolution with extreme accuracy independent of variable network latency.
2. Brief Description of The State of The Art
While the role of cooperation has a secure place in the history of mankind, so too does the role of competition. Few will disagree that, over the course of time, human beings have competed in widely diverse ways for both tangible and intangible objects of need and desire. Such objects of need or desire have included: food; shelter; land; rewards, prizes, natural resources; sexual partners: fame; fortune; diversion or recreation such as sport; and ultimately, survival.
While the nature of man appears to not have changed fundamentally over the course of time, it is clear that his choice of tools and weapons have changed in step with his increase in technological skill and knowledge.
For example, in the late 1960's, the globally-extensive information infrastructure, now referred to as the Internet, was developed by the United States Government as a tool for national defense and survival in world of intense global competition and military struggle. Ironically, some thirty years later, with the technological development of the HyperText Transport Protocol (HTTP), the HyperText Markup Language (HTML), and the Domain Name System (DNS), a globally-extensive hyper-linked database referred to as the World Wide Web (WWW) has quickly evolved upon the infrastructure of the Internet. By virtue of the WWW, billions and even trillions of information resources, located on millions of computing systems at different locations on Earth, have been linked in unspeakably complex ways serving the needs and desires of millions of information resource users under the domains .net, .edu, .gov, org, .com, mil. etc. of the DNS.
The overnight popularity and success of the WWW can be attributed to the development of GUI-based WWW browser programs which enable virtually any human being to access a particular information resource (e.g. HTML-encoded document) on the WWW by simply entering its Uniform Resource Locator (URL) into the WWW browser and allowing the HTTP to access the document from its hosting WWW information server and transport the document to the WWW browser for display and interaction. The development of massive WWW search engines and directory services has simplified finding needed or desired information resources using GUI-enabled WWW browsers.
Without question, a direct consequence of the WWW, the GUI-based WWW browser and underlying infrastructure of the Internet (e.g. high-speed IP hubs. routers, and switches) has been to provide human beings world over with a new set of information-related tools that can be used in ever expanding forms of human collaboration, cooperation, and competition alike.
Over the past several years, a number of WWW-enabled applications have been developed, wherein human beings engage in either a cooperative or competitive activity that is constrained or otherwise conditioned on the variable time. Recent examples of on-line or Web-enabled forms of time-constrained competition include: on-line or Internet-enabled purchase or sale of stock, commodities or currency by customers located at geographically different locations, under time-varying market conditions; on-line or Internet-enabled auctioning of property involving competitive price bidding among numerous bidders located at geographically different locations; and on-line or Internet-enabled competitions among multiple competitors who are required to answer a question or solve a puzzle or problem under the time constraints of a clock, for a prize and/or an award.
In each of the above Internet-supported applications or processes, there currently exists an inherent unfairness among the competitors due to at least s-x important factors, namely: (1) the variable latency of (or delay in) data packet transmission over the Internet, dependent on the type of connection each client subsystem has to the Internet infrastructure; (2) the variable latency of data packet transmission over the Internet, dependent on the volume of congestion encountered by the data packets transmitted from a particular client machine: (3) the vulnerability of these applications to security breaches, tampering, and other forms of manipulation by computer and network hackers; (4) the latency of information display device used in client subsystems connected to the Internet; (5) the latency of information input device used in client subsystems connected to the Internet; and (6) the latency of the central processing unit (CPU) used in the client machine.
Regarding the first unfairness factor, it is important to point out that the network latency over the Internet varies over the course of the day and in response to network usage. Expressed differently, the time for a transmitted data packet to travel between a first client computer to a particular information server on the Internet will be different from the time for a transmitted data packet to travel between a second client computer to the same information server on the Internet. This time variance in the network latency on the Internet, referred to as the “variable network latency”, must necessarily be modeled a non-deterministic process subject to the laws and principles of random (e.g. stochastic) processes. This has a number of important consequences for Internet-supported forms of time-constrained competition.
For example, in connection with Internet-supported competitions (e.g. games) involving a plurality of competitors or competitors, U.S. Pat. No. 5,820,463 attempts to compensate for network latency by measuring the average latency between all the client machines and then inserting intentional communication delays to make the average overall latency the same for all communications links. However, while this system equalizes the communication latency on average, it is wholly incapable of compensating for the random components of network latency (i.e. variable network latency) of the Internet. Consequently, even when practicing the methods disclosed in U.S. Pat. No. 5,820,463, the variable network latency of the Internet nevertheless introduces inherent sources of error into time-constrained competitions, thereby putting certain competitors at an unfair disadvantage, i.e. by virtue of their client computer connection to the Internet in relation to the information server supporting the time-constrained competition.
Regarding the second unfairness factor, it is important to point out that when Internet-supported competition among a small number of competitor (e.g. 100 or less), the network latency should not be greatly affected by the competitors themselves, but rather will be more dependent on the types of connections the competitor's client machines have with the Internet and on network traffic and congestion as a whole. However, during Internet-supported competition involving massive numbers of competitors, as would exist during Web-based securities and commodities trading, and Web-based auctions, involving thousands or even millions of human beings all competing simultaneously. Because of the simultaneous start time and the expected distribution of responses, the system will be subject to two intense impulses of traffic, one slightly before the competition start, and another at the mean response time. It is necessary for the time-constrained competition system to be able to adequately handle this intense bandwidth.
As larger and larger numbers of competitors are involved in a time-constrained competition, it becomes more and more likely that there will be a tie between two or more competitors. Typically, it is preferable to avoid ties and be able to identify a single competitor as the winner. A time-constrained competition system intended to manage extremely large numbers of competitor must be able to resolve the time of the responses produced by such competitors in order to avoid or reduce the occurrence of ties.
Regarding the third unfairness factor, it is important to point out that each of the above-described time-constrained forms of Internet-supported competition are highly vulnerable to security breaches, tampering, and other forms of intentional network disruption by computer and network hackers. Although the use of a local clock insures fairness, it also raises a potential security problem with the system. Theoretically, an unscrupulous competitor could intercept and modify communications between the client and server, thereby falsifying the timestamps and gaining an unfair advantage over other competitors. Alternatively, an unscrupulous competitor could modify the local clock, either through software or hardware means, or interfere with the clock synchronization procedure, again gaining an unfair advantage over other competitors. The ordinary encryption/decryption techniques suggested in U.S. Pat. No. 5,820,463 are simply inadequate to prevent cheating or violation of underlying rules of fairness associated with such time-constrained forms of Internet-supported or Internet-enabled competition.
Regarding the fourth unfairness factor, it is important to point out that different types of information display devices have faster refresh rates. In the time-constrained competitions described above, the most common information display device used on client subsystems is the cathode ray tube (CRT) display monitor. In a CRT display monitor, the images presented to the user are drawn by an electron beam onto the screen from top to bottom, one scanline at a time. When the electron beam reaches the bottom, it must then travel back to the top of the monitor in order to prepare to output the first scanline again. The period in which the beam returns to the top of the screen is known as the retrace period. The overall frequency of the screen refreshing and retrace cycle is determined by the frequency of the vertical synchronization pulses in the video signal output by the computer. This frequency is often referred to as the vertical sync rate. In most monitors this rate ranges from 60 to 150 Hz. Unless the vertical redraw time is synchronized with the desired competition “start-time” in time-constrained competition at hand, a random error in the start time is created due to the uncertainty of the actual time the query, bid, price or other information element will be displayed on the display screen of a particular client system used to participate in the time-constrained competition at hand. This “information display latency” error can be as much as ten milliseconds or more depending on the vertical sync rate, and is in addition to any other errors in the start-time caused by network latency, computer processing time, and other factors.
U.S. Pat. No. 5,775,996 addresses the problem of information display latency by providing a method and apparatus for synchronizing the video display refresh cycles on multiple machines connected to an information network. This method involves using methods similar to NTP (network timekeeping protocol) or other clock synchronization algorithms in order to synchronize both the phase and frequency of the vertical refresh cycle on each display. First, the monitors are set to the same frequency using standard video mode setting functions available in the operating system. Next, the phase of the cycle is adjusted by repeatedly switching in and out of “interlaced” mode. Since the interlaced modes have different timings than the standard modes, switching briefly into an interlaced mode will affect the phase of the refresh cycle.
This prior art method has a drawback in that it may be undesirable to modify the refresh rate on a competitor's client machine, since that is in part a personal preference, and typically under the control of the user. All the client machine video-driver cards may not be physically capable of operating at the same refresh rates, particularly if they are not operating at the same resolution. Also, the monitors themselves may not be capable of operating at a particular refresh rate, and it may be necessary to operate at an undesirable “lowest common denominator” frequency, or not at all. This problem is compounded as more users and client machines are involved. Another problem with this prior art display synchronization method is that interlaced video modes are not possible on all video driver cards. In addition, switching into interlaced modes may temporarily disrupt the display as the monitor adjusts to handle the new input. Many display monitors will produce an annoying clicking noise as the video mode is changed.
Regarding the fifth “unfairness factor”, it must be pointed out that different types of information input devices have faster information input rates. In the time-constrained competitions described above, the most common information input device used on today's client subsystems is the manually-actuated keyboard. In response to manual keystrokes by the competitor at his or her client machine, and electronic scanning operations, the keyboard generates a string of ASCII characters that are provided as input to the client system bus and eventually read by the CPU in the client machine. Only when the desired information string is typed into the client machine, and the keyboard return key depressed, will the keyed-in information string be transmitted to the information server associated with the time-constrained competition. Those with physical handicaps, and those using low-speed information input devices, will have their responses, commands and/or instructions transmitted with greater latency, and therefore arriving at the information server at a later time, assuming all other factors maintained constant for all competitors. In short, depending on the type of input device used, a competitor participating in an Internet-supported time-constrained competition can be put at a serious disadvantage in comparison with those using high-speed information input devices and high-speed processors. When competing against androidal competition (e.g. thinking machines), as currently used in electronic-based securities and commodity trading, and electronic-based auctions, human competitors are placed at a great disadvantage in rapidly changing markets and fast-paced auctions.
Regarding the sixth unfairness factor, it must be pointed out that a further source of latency exists within each client machine due to the fact that the central processor unit (CPU) employed therein: services interrupts posted by competing peripheral devices connected to the client system bus; executes program instructions at a rate set by its clock speed; and has limited memory resources available at any instant in time. These factors operate to further add a degree of delay in when the data packets associated with the competitor's response is transmitted to the information server supporting the time-constrained competition. Notably, the longer this “processor latency” is, the latter the competitor's response will arrive at the information server supporting the time-constrained competition.
Consequently, the six “unfairness” factors discussed above compromises the integrity any form of time-constrained competition supported on or otherwise enabled over the Internet. Thus must be satisfactorily resolved in order ensure fundamental principles of fairness and fair play that have come to characterize the systems of government, justice, securities, commodities and currency market trading, sportsmanship, and educational testing, in the United States of America and abroad.
Thus there is a great need in the art for an improved way and means of fairly and securely enabling timed-constrained competitions for high stakes among millions of competitors scattered around the globe, while avoiding the shortcomings and drawbacks of prior art methodologies including.